System, method, and apparatus for an interactive virtual fax machine

ABSTRACT

A system, method, and apparatus for a virtual fax machine are provided. In one embodiment, a system for a virtual fax machine is provided including a computer configured to display a virtual fax machine based on a script, a server configured to receive at least one electronic document associated with a fax to be sent using the virtual fax machine, and a traditional facsimile machine configured to receive the fax to be sent. In another embodiment, an apparatus for a virtual fax machine is provided including a computer configured to locate and execute a script associated with a virtual fax machine, display the virtual fax machine, associate at least one electronic document with a fax to be sent, encode the at least one electronic document to a form suitable for communication over a network, and transmit the encoded electronic document over the network as the fax to be sent.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional Application No.61/360,330, filed Jun. 30, 2010, the entire contents of which is herebyincorporated herein by reference.

BACKGROUND OF THE INVENTION

The present invention is related to the communication of electronicdocuments among computers and traditional facsimile (fax) machines overa network. While traditional fax machines have been successfully reliedupon to transmit electronic documents over the public switched telephonenetwork (PSTN) for some time, a growing number of electronic documentsare transmitted over public and private packet-switched data networksusing, for example, electronic mail (e-mail) applications. However,because traditional fax machines are still commonly available and widelyutilized, a need exists to facilitate communication among traditionalfax machines connected to the PSTN and computers and other computingdevices connected to public and private packet-switched data networks.

A traditional fax machine scans an image printed on a document andencodes the image by assigning digital codes to pixels of a dot matrixthat represents the image. Once a traditional fax machine scans andencodes an image into digital form, electrical signals corresponding tothe image can be sent over the PSTN to another traditional fax machine,which decodes the image and prints the image as a hardcopy document.

In a typical office environment equipped with a private packet-switcheddata network and access to a public packet-switched data network such asthe Internet, a server is connected to the PSTN by one or more dedicatedlines, such as fiber optic or copper T1/E1 lines. From the perspectiveof the server, the PSTN is both a source of incoming faxes as well as adestination of outgoing faxes. The server is also connected to theprivate packet-switched data network and, typically, the Internet.Further, the server may recognize computers and other computing devicesconnected to the private and public packet-switched data networks asboth a source of incoming faxes as well as a destination of outgoingfaxes.

“Online” fax services are available which make use of e-mail tocommunicate between a user with an e-mail account and a traditional faxmachine. Because e-mail provides a means to send electronic documents ofvarious formats between users by way of an “attachment” of theelectronic documents, online fax services receive e-mail attachments,encode the attachments to a form suitable for use by a traditional faxmachine, and transmit the encoded attachments to a traditional faxmachine over the PSTN.

Existing online fax services rely upon a “server-side” configuration,which requires that a service provider's server execute a majority ofthe processes associated with the service. Also, existing online faxservices are not intuitive to a user because the process of the servicebears no resemblance to the steps taken to transmit documents betweentraditional fax machines.

FIG. 1 illustrates a diagram of a typical “fax over e-mail” system 100.System 100 includes a computer 110, a packet-switched data network 120,a server 130, a PSTN 150, and a traditional fax machine 160. Thecomputer 110 is coupled to the packet-switched data network 120 tofacilitate data communication between the computer 110 and the server130. The server 130 is a general purpose computer configured to hostwebsites, host e-mail services, and host facsimile services. Optionally,a server 140 may be required to perform at least some functions of theservices hosted by the server 130, if the server 130 is unable toadequately perform the processing requirements of the functions due tohigh processing demands, processing limitations, and cost constraints.

In operation of the system 100, a user of the computer 110 attaches anelectronic document to an e-mail and sends the e-mail to an intendedrecipient, such as the traditional fax machine 160, using the e-mailservices hosted by the server 130. To that end, the e-mail andelectronic document attached to the e-mail are transmitted from thecomputer 110 to the server 130, where the e-mail and electronic documentare received by the e-mail service of the server 130. The e-mail servicemay separate the electronic document from the e-mail and provide theelectronic document to the facsimile services of the server 130, alongwith a specific address (i.e., a PSTN telephone number) for delivery ofthe electronic document to a traditional fax machine over the PSTN 150.The facsimile services of the server 130 then transmits the electronicdocument to the traditional fax machine 160 over the PSTN 150, based onthe specific address. Finally, the traditional fax machine 160 producesa printed copy of the electronic document received from the server overthe PSTN. The fax over e-mail system 100 also receives faxes from thetraditional fax machine 160 and transmits the faxes to the computer 110over the packet-switched data network 120 as an attachment to an e-mail.

It is noted that the fax over e-mail system 100 relies upon a“server-side” configuration. In other words, the server 130 (andpossibly the server 140) performs the majority of the processes requiredfor the fax over e-mail system 100. Thus, the server 130 is required inevery fax over e-mail system and must have the requisite processinghorsepower to efficiently and adequately provide the services associatedwith the fax over email system 100.

FIG. 2 illustrates an alternative to the fax over e-mail system 100.FIG. 2 illustrates a diagram of a typical “fax over interne” system 200.System 200 includes a computer 210, a packet-switched data network 220,a server 230, a PSTN 250, and a traditional fax machine 260. Thecomputer 210 is coupled to the data network 220 to facilitate datacommunication between the computer 210 and the server 230. The server230 is a general purpose computer configured to host websites, hoste-mail services, and host facsimile services. Optionally, a server 240may be required to perform at least some functions of the serviceshosted by the server 230, if the server 230 is unable to adequatelyperform the processing requirements of the functions due to highprocessing demands, processing limitations, and cost constraints.

In operation of the system 200, a user of the computer 210 must navigateto an internet fax service website hosted by the server 230 and uploadan electronic document to the server 230. The remainder of the processesexecuted by the fax service of the server 230 are similar to thosedescribed above with regard to the facsimile service of the server 130.

Again, it should be appreciated that the fax over internet system 200,like the fax over e-mail system 100, relies upon a server-sideconfiguration. That is, the computer 210 operates merely as a client ofthe server 230 and, as such, the server 230 performs the majority of theprocesses required for the fax over internet system 200, withoutoffloading processes required for the fax over internet system 200 tothe computer 210.

Accordingly, new systems, methods, and apparatuses to address theshortcomings of the systems discussed above would be desirable.

BRIEF SUMMARY OF THE INVENTION

The present invention is directed to various embodiments of a system,method, and apparatus for a virtual fax machine.

In one embodiment, the present invention provides a system for a virtualfax machine including a computer having a network browser configured tobrowse a packet-switched data network, receive a script associated witha virtual fax machine over the packet-switched data network, and displaythe virtual fax machine based on the script, a server including afacsimile service configured to receive at least one electronic documentassociated with a fax to be sent using the virtual fax machine, encodethe electronic document to a form suitable for communication over apublic switched telephone network (PSTN), and transmit the encodedelectronic document over the PSTN as the fax to be sent, and atraditional facsimile machine configured to receive the fax to be sentover the PSTN and produce a hardcopy of the electronic document.

In another embodiment, the present invention provides an apparatus for avirtual fax machine including a network browser configured to locate andexecute a script associated with a virtual fax machine, display thevirtual fax machine based on the script, associate at least oneelectronic document with a fax to be sent using the virtual fax machine,encode the at least one electronic document to a form suitable forcommunication over a network, and a network interface configured totransmit the encoded electronic document over the network as the fax tobe sent.

In another embodiment, the present invention provides an apparatus for avirtual fax machine including a network host service configured to hostat least one web page or at least one script associated with a virtualfax machine, a facsimile service configured to receive at least oneelectronic document associated with a fax to be sent using the virtualfax machine, encode the electronic document to a form suitable forcommunication over a public switched telephone network (PSTN), andtransmit the encoded electronic document over the PSTN as the fax to besent, and a PSTN interface configured to transmit the encoded electronicdocument over the PSTN as the fax to be sent.

In another embodiment, the present invention provides a method for avirtual fax machine including locating and executing, by a computer, ascript associated with a virtual fax machine, displaying the virtual faxmachine based on the script, associating at least one electronicdocument with a fax to be sent using the virtual fax machine, encodingthe at least one electronic document to a form suitable forcommunication over a network, and transmitting the encoded electronicdocument over the network as the fax to be sent.

In another embodiment, the present invention provides a computerreadable medium storing computer instructions thereon that, whenexecuted by an arithmetic processor, direct the arithmetic processor toperform a method of a virtual fax machine including locating andexecuting a script associated with a virtual fax machine, displaying avirtual fax machine based on the script, the virtual fax machineincluding a send paper tray, a receive paper tray, and a send button,associating an at least one electronic document with a fax to be sent,encoding the at least one electronic document to a form suitable forcommunication over a network, and transmitting the encoded electronicdocument over the network as the fax to be sent.

BRIEF DESCRIPTION OF THE DRAWINGS

Aspects, objects, and features of the present invention will becomeapparent from the following detailed description, read in conjunctionwith and reference to the accompanying drawings, where:

FIG. 1 illustrates elements of a fax over e-mail system;

FIG. 2 illustrates elements of a fax over interne system;

FIG. 3 illustrates a diagram of elements of an embodiment of a system ofthe present invention;

FIG. 4 illustrates a functional block diagram of an embodiment of acomputer for implementing aspects of the present invention;

FIG. 5 illustrates a functional block diagram of an embodiment of aserver for implementing aspects of the present invention;

FIG. 6 illustrates an embodiment of a display of a virtual fax machinefor implementing aspects of the present invention;

FIG. 7 illustrates an embodiment of an address book dialog box of avirtual fax machine for implementing aspects of the present invention;

FIG. 8 illustrates an embodiment of a cover page dialog box of a virtualfax machine for implementing aspects of the present invention;

FIG. 9 illustrates an embodiment of a fax log dialog box of a virtualfax machine for implementing aspects of the present invention;

FIG. 10 illustrates an embodiment of a received fax dialog box of avirtual fax machine for implementing aspects of the present invention;

FIG. 11 illustrates an embodiment of a settings dialog box of a virtualfax machine for implementing aspects of the present invention;

FIG. 12 illustrates a method of sending faxes according to an embodimentof the present invention;

FIG. 13 illustrates a method of receiving faxes according to anembodiment of the present invention; and

FIG. 14 illustrates an embodiment of a hardware configuration forimplementing aspects of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Various embodiments, aspects, and features of the present inventioninclude a system, method, and apparatus for a virtual fax machine usingan interactive multimedia tool to facilitate the transmission ofelectronic documents among a computer or computing device coupled to apacket-switched data network and a traditional fax machine coupled to aPSTN. One embodiment of the present invention includes a virtual faxmachine implemented at least in part using one of a plurality ofavailable multimedia graphics programming languages, such as AdobeFlash®. Using the interactive visual and audio capabilities of theavailable multimedia graphics programming languages, the virtual faxmachine may simulate actions accompanying the use of a traditional faxmachine and provide audible sounds consistent with such use.

Embodiments of the present invention include web pages and scriptsassociated with a virtual fax machine residing on a server coupled to aPSTN and a private, public, or private and public packet-switched datanetwork. In this respect, a user of the virtual fax machine is notrequired to install any program associated with the virtual fax machineon the user's computer. Instead, the user's computer may be coupled tothe packet-switched data network, and a browser application of theuser's computer may be configured to access the web pages and scriptsassociated with the virtual fax machine hosted by the server. Further,the computer, as directed by the web pages and scripts associated withthe virtual fax machine, may be further configured to encode electronicdocuments stored on a memory of the computer to a form suitable fortransmission over packet-switched data networks and/or a PSTN, fortransmission to the server. The server may be configured to transcodethe electronic documents to a form suitable for transmission over aPSTN, if necessary, and transmit the transcoded documents over the PSTNto the traditional facsimile machine. Alternatively, if the electronicdocuments received by the server from the computer are already encodedto a form suitable for transmission over the PSTN, the server maytransmit the electronic documents over the PSTN to the traditional faxmachine, without transcoding (i.e., forward the electronic documentsover the PSTN). The present invention also accommodates theabove-described process in reverse by receiving a fax from a traditionalfax machine and transcoding the fax to a form suitable for viewing andediting on the user's computer.

Another embodiment of the present invention includes web pages, scripts,and/or stand-alone programs associated with a virtual fax machineresiding on a computer. As directed by the web pages, scripts, and/orstand alone programs, the computer may be configured to encodeelectronic documents stored on a memory of the computer to a formsuitable for transmission over packet-switched data networks and/or aPSTN. Once encoded, the computer may be further configured to transmitthe electronic documents to a server for transcoding and transmitting toa traditional fax machine over a PSTN, or forwarding to the traditionalfax machine over the PSTN, without transcoding. Alternatively, thecomputer may be further configured to transmit the encoded electronicdocuments directly to the traditional fax machine over the PSTN, ifequipped with a PSTN interface. The present invention also accommodatesthe above-describe process in reverse by receiving a fax from atraditional fax machine and transcoding the fax to a form suitable forviewing and editing on the user's computer.

Additional aspects of the present invention provide a user with visualand audible simulations of a traditional facsimile machine. One aspectof the present invention includes providing a degree of aesthetics tovisually and audibly aid a user with using a virtual fax machine. Forexample, when used for a first time, a user of the present invention maybe more readily capable of using the virtual fax machine of the presentinvention, which provides a graphical representation of a fax machineresembling a traditional facsimile machine (i.e., a virtual faxmachine). As a result, the user would intuitively know where to “dragand drop” a file to be faxed or where to “dial” a fax number of a faxrecipient. Moreover, the sounds of “dialing,” “connecting,” or“receiving” may mimic a traditional fax machine such that a user couldexperience almost immediate familiarity with the virtual fax machine.

Advantageously and in contrast to the operation of the systems 100 and200, embodiments of the present invention may operate based on aclient-side scripting configuration. One advantage to a client-sidescripting configuration is that memory and processor requirements forfunctions associated with faxing reside on a user's computer,alleviating the need for a host of a fax service to acquire and maintainservers with large processing and storage capacity.

Turning to the drawings, in which like numerals indicate like elementsthroughout, embodiments of the invention are described in furtherdetail.

FIG. 3 illustrates an example embodiment of a system 300 including aclient-side scripted virtual fax machine. System 300 includes a computer310, a data network 320, a server 330, a PSTN 340, and a traditional faxmachine 350. The computer 310 may comprise a general or special purposecomputer. The computer 320 is configured to display a virtual faxmachine, attach or associate an electronic document to a fax to be sent,encode the electronic document to a form suitable for transmission overthe packet-switched data network 320 and/or the PSTN 340, and transmitthe encoded document over the packet-switched data network 320 and/orthe PSTN 340. The data network 320 may comprise a public, private, orpublic and private packet-switched data network, including a Local AreaNetwork (LAN), a Wide Area Network (WAN), and the Internet. The PSTN 340may comprise a public, private, or public and private switched telephonenetwork. The server 330 may comprise a general or special purposeserver. The server 330 is configured to store and host web pages andperform functions supporting the virtual fax machine. For example, uponrequest from the computer 310, the server 330 may transmit a copy of aweb page, such as a Hypertext Markup Language (HTML) web page, and/orassociated scripts to the computer 310 over the packet-switched datanetwork 320. Additionally, the server 330 may be further configured toreceive an encoded electronic document from the computer 310 over thepacket-switched data network 320, transcode the electronic document to aform suitable for transmission over the PSTN 340, and transmit theencoded electronic document to the traditional fax machine 350 over thePSTN 340. Alternatively, the server 330 may be further configured toreceive an electronic document from the computer 310 which is alreadyencoded to a form suitable for transmission to the traditional faxmachine 350, and forward the electronic document to the traditional faxmachine 350 over the PSTN 340, without transcoding.

According to aspects of the present invention, the computer 310 executesa client-side scripted virtual fax machine by interpreting and executingweb pages, scripts, and/or programs to display the virtual fax machineand implement functions of the virtual fax machine. In one embodiment,the client-side scripted virtual fax machine is embedded in a web pagehosted by the server 330. That is, the client-side scripted virtual faxmachine is implemented using one or more scripts embedded in a web page,such as an HTML page, hosted by the server 330. Alternatively, theclient-side scripted virtual fax machine may be implemented using one ormore stand-alone scripts (i.e., scripts not embedded in a web page)hosted by the server 330. In another embodiment, the client-sidescripted fax machine may be implemented either as one or more web pages,scripts, and/or programs stored on a memory of the computer 310. In thisembodiment, the server 330 may be unnecessary.

With reference to FIG. 4, a functional diagram of the computer 310 isillustrated. In one embodiment, the computer 310 includes a networkbrowser 410 having a script engine 420, a packet-switched interface 430,a memory 440, and a display and input/output (I/O) interface 450. Thepacket-switched interface 430 is coupled to a packet-switched datanetwork such as the packet-switched data network 320. Thus, the computer310 is communicatively coupled to the server 330. The network browser410 may comprise any well known internet web browser such as InternetExplorer® or Firefox®. The script engine 420 may be native to thenetwork browser 410 or separately installed as an add-on to the networkbrowser 410, to add additional functions and capabilities to the networkbrowser 410. The display and I/O interface 450 comprises hardwareinterfaces necessary to connect input and output devices to the computer310. A non-limiting example set of input and output devices which may beconnected to the computer 310 via the display and I/O interface 450include a keyboard, a pointing device (i.e., a mouse), speakers, and adisplay device (i.e., a monitor). The memory 440 stores data maintainedby the computer 440 such as electronic documents viewed and edited by auser of the computer 310.

The network browser 410 is configured to interpret, execute, and displayweb pages received from a network host service of the server 330 overthe packet-switched data network 320 via the packet-switched interface430. Further, the script engine 420 of the network browser 410 isconfigured to interpret, execute, and display scripts embedded in webpages received from the server 330, as well as stand-alone scriptsreceived from the server 330. That is, when the script engine 420 of thenetwork browser 410 interprets and executes scripts provided by theserver 330 that are associated with the virtual fax machine, the scriptengine displays a functional version of the virtual fax machine on adisplay of the computer 310. Additionally, the script engine 420, asdirected by web pages and scripts associated with the virtual faxmachine, is further configured to attach or associate an electronicdocument to a fax to be sent, encode the electronic document to a formsuitable for transmission over the packet-switched data network 320(i.e., a web-enabled document), and transmit the encoded electronicdocument to the server 330 for transcoding and transmitting to thetraditional fax machine 350 over the PSTN 340. Alternatively, the scriptengine, as directed by web pages and scripts associated with the virtualfax machine, may be configured to encode the electronic documentdirectly to a form suitable for transmission over the PSTN 340, andtransmit the encoded electronic document to directly to the server 330for forwarding to the traditional fax machine 350 over the PSTN 340without transcoding.

In another embodiment, the computer 310 may further include a websitehost service 460 and a PSTN interface 480. In this embodiment, thenetwork browser 410 and script engine 420 are configured to interpret,execute, and display web pages and scripts received from the websitehost service 460 executing on the computer 310 itself. The website hostservice 460 is configured to host web pages and scripts associated withthe virtual fax machine stored on the memory 440. Further, the PSTNnetwork interface 480 is configured to communicate directly withdevices, such as the traditional fax machine 350, over the PSTN 340. Inthis embodiment, the script engine may be configured, as directed by webpages and scripts associated with the virtual fax machine, to encode theelectronic document directly to a form suitable for transmission overthe PSTN 340 to the traditional fax machine 350, and directly transmitthe encoded electronic document to the traditional fax machine 350 overthe PSTN 340 via the PSTN interface 480.

With reference to FIG. 5, a functional diagram of the server 330 isillustrated. One embodiment of the server 330 includes a packet-switchedinterface 510, a network host service 520, a memory 530, a facsimileservice 540, and a PSTN interface 550. The network host service 520 maycomprise a host service configured to host web pages stored on thememory 530 to computers and other computing devices over apacket-switched data network. For example, the network host service 520is configured to transmit web pages over the packet-switched datanetwork 320 to the computer 310 via the packet-switched interface 510,in response to a request for the web pages from the computer 310. Thememory 530 stores data maintained by the server 330, such as web pagesand scripts associated with the virtual fax machine. It is noted thatthe scripts associated with the virtual fax machine may be, at least inpart, embedded within the web pages associated with the virtual faxmachine.

The facsimile service 540 is configured to receive one or moreelectronic documents encoded in a form suitable for transmission overpacket-switched data networks (i.e., web-enabled documents), transcodethe electronic documents to a form suitable for communication over aPSTN, and transmit the transcoded electronic documents over the PSTN, sothat the transcoded documents may be received, interpreted, andreproduced by a traditional fax machine. For example, the facsimileservice 540 may receive a web-enabled electronic document, transcode(i.e., convert encoding type of) the web-enabled electronic document,and transmit the transcoded electronic document to the traditional faxmachine 350 over the PSTN network 340 via the PSTN interface 550, sothat the transcoded electronic document may be received, interpreted,and reproduced by the traditional fax machine 350. Transcoding aweb-enabled electronic document by the facsimile server 540 includesconverting the web-enabled electronic document from a first type ofencoding to a second type of encoding, the first type of encoding beingsuitable for communication over packet-switched data networks and thesecond type of encoding being suitable for communication over PSTNnetworks. It is noted that transcoding may be necessary becausetraditional fax machines are not able to directly interpret codingformats generally utilized by the computer 310, the server 330, and datatransmitted over the packet-switched data network 320. In other words,the facsimile service 540 is configured to transcode web-enabled contentreceived from the computer 310 into PSTN-enabled content which issuitable to be communicated over the PSTN and which is also capable ofbeing interpreted by traditional fax machines. In another embodiment,the facsimile service 540 may receive an electronic document alreadyencoded in a form suitable for transmission over a PSTN, and directlytransmit (i.e., forward) the encoded document over the PSTN network 340via the PSTN interface 550, without transcoding.

It is noted that the above-described process may also operate in reverseto receive a fax from a traditional fax machine. That is, thetraditional fax machine 350 scans a hardcopy (i.e., paper copy) of adocument to capture an image on the document, produces an electroniccopy of the image, encodes the image according to an encoding typesuitable for transmission over the PSTN 340, and transmits the encodedimage to the server 330. At the server 330, upon receipt of the encodedimage from the fax machine 350 at the PSTN interface 550, the PSTNinterface 550 routes the encoded image to the facsimile service 540. Thefacsimile service 540 receives the encoded image, transcodes the imageto a form suitable transmitting over a packet-switched data networkand/or for viewing and editing on a computer, and stores the transcodedimage to the memory 530. To that end, computing devices, such as thecomputer 310, may view and retrieve the transcoded image over thepacket-switched data network 320. It is noted that faxes received overthe PSTN 340 from traditional fax machines are stored in relation to avirtual fax number which they are received upon, so that they may bemade available only to an appropriate destination virtual fax machine.In embodiments of the present invention, a virtual fax machine may beassociated with a virtual fax number, so that a traditional fax machinemay transmit documents to be received by the virtual fax machine. Inthis case, for example, the PSTN 340 may be configured to route callsplaced to a virtual fax machine number to the server 330, as the server330 supports virtual fax machines.

As a further description of the operation of the system 300, a user ofthe computer 310 may request a web page or pages and scripts associatedwith a virtual fax machine from the server 330 over the packet-switcheddata network 320 using the network browser 410. That is, a user of thecomputer 310 may direct the network browser 410 to access the web pagesand scripts associated with the virtual fax machine that are stored onthe server 330 by specifying a location of the web pages and scripts onthe server 330 using a Uniform Resource Locator (URL). For example, aURL of specifying web pages and scripts associated with the virtual faxmachine on the server 330 may comprise an interne address such aswww.fax2mail.com. At the server 330, the request is routed to andreceived by the network host service 520, which retrieves a copy of theweb pages and scripts associated with the virtual fax machine from thememory 530, and transmits the copy of the web pages and scripts to thecomputer 310 over the packet-switched data network 320 via thepacket-switched interface 510. At the computer 310, the web pages arerouted to and received by the network browser 410 via thepacket-switched interface 430. In turn, the network browser 410 and thescript engine 420 interpret, execute, and display the virtual faxmachine based on the web pages and scripts. More specifically, the webpages and scripts associated with the virtual fax machine areinterpreted, in parts, by the network browser 410 and the script engine420. For example, HTML portions of the web pages may be interpreted anddisplayed directly by the network browser 410, while scripted portionsof the web pages and the scripts may be interpreted, executed, anddisplayed by the script engine 420 of the network browser 410.

Because the script engine 420 resides at the computer 310, theprocessing requirements to interpret, execute, and display the virtualfax machine and the functions of the virtual fax machine are supportedby the computer 310 and not the server 330. In this manner, the virtualfax machine of the present invention is client-scripted. In contrast tothe server-scripted “fax over email” and “fax over internet”configurations described above with reference to FIGS. 1 and 2, thevirtual fax machine of the present invention relies upon servers forrelatively less amounts of processing. Instead, processing demands aredistributed to individual client computers. That is, in comparison tothe servers 130 and 230, which are substantially relied upon for the“fax over email” and “fax over internet” systems, the server 330 is notsubstantially relied upon for the virtual fax machine of the presentinvention. Thus, according to one aspect of the present invention,processing demands are distributed to each client computer that requestsweb pages and scripts associated with the virtual fax machine, such asthe computer 310.

In the embodiment of the system 300 in which the computer 310 includesthe website host service 460 and the PSTN interface 480, a user of thecomputer 310 may request web pages and scripts associated with thevirtual fax machine from the website host service 460. That is, a userof the computer 310 may direct the network browser 410 to access the webpages and scripts associated with the virtual fax machine that arestored on the computer 310 by specifying a local location on thecomputer 310 using a Uniform Resource Locator (URL) or a path name onthe memory 440. At the computer 310, the web pages are received by thenetwork browser 410, and the network browser 410 and the script engine420 interpret, execute, and display the web pages and scripts associatedwith the virtual fax machine on a display of the computer 310.

Additionally, in the embodiment of the system 300 in which the computer310 includes the website host service 460 and the PSTN interface 480,the script engine 420 may be configured to attach or associate anelectronic document to a fax to be sent, encode the document to a formsuitable for transmission over the packet-switched data network 320, andtransmit the encoded document to the server 330 for transcoding andforwarding over the PSTN 340 via the PSTN interface 550. Alternatively,based on the web pages and scripts associated with the virtual faxmachine, the script engine 420 may be configured to attach or associatean electronic document to a fax to be sent, encode the document to aform suitable for transmission over the PSTN 340, and transmit theencoded document to the server 330 for direct forwarding over the PSTN340 via the PSTN interface 550, without transcoding. Additionally, thescript engine 420 may be further configured to attach or associate anelectronic document to a fax to be sent, encode the document to a formsuitable for transmission over the PSTN 340, and directly transmit theencoded document to the traditional fax machine 350 over the PSTN 340via the PSTN interface 480. Thus, as will be appreciated, the presentinvention includes embodiments of the system 300 which do not rely uponthe server 330, when the computer 310 includes the PSTN interface 480.It is noted that the above-describe process may also operate in reverseto receive a fax from a traditional fax machine. Additionally, thefunctions and processes of the web pages and scripts associated with thevirtual fax machine may be implemented by a stand-alone program storedon the computer 310 which may be executed on the computer 310 withoutinterpretation and execution via the network browser 410 and scriptengine 420.

In embodiments of the present invention, the extent of the functions andprocesses performed by the network browser 410, the script engine 420,and/or the computer 310 are defined by the web pages, scripts, and/orprograms associated with the virtual fax machine. The present inventionincludes embodiments in which the web pages, scripts, and/or programsassociated with the virtual fax machine include instructions for visualand audio display of the virtual fax machine, functions attributed tothe virtual fax machine, and functions associated with encodingelectronic document into forms suitable for transmission over apacket-switched data network and/or a PSTN.

FIG. 6 illustrates an example display of a virtual fax machine 600,whether embodied as web pages and scripts stored at the server 330, webpages and scripts stored at the computer 310, and/or as a program storedat the computer 310. The virtual fax machine 600 includes a send papertray 602 having a browse button 602, a virtual handset 604, and areceive paper tray 606 having a received faxes button 620. Asillustrated in FIG. 6, the virtual fax machine 600 further includes thefollowing fields and buttons: an enter fax number field 630, an enterrecipient name field 632, a select from address book pulldown menubutton 634, a settings button 640, a cover page button 642, a fax logbutton 644, a send button 646, and a plurality of numerical buttons.

In one embodiment, the virtual fax machine 600 is implemented at leastin part using one of a plurality of available multimedia graphicsprogramming languages utilized on the Internet, such as Adobe Flash®.Using the interactive visual and audio capabilities of the availablemultimedia graphics programming languages, the virtual fax machine mayvisually simulate actions accompanying the use of a traditional faxmachine and provide audible sounds consistent with such use.

As illustrated in FIG. 6, the virtual fax machine 600 resembles atraditional fax machine. In this manner, a user of the virtual faxmachine 600 may be readily able to use the virtual fax machine 600 basedupon intuition and familiarity with traditional fax machines.Embodiments of the virtual fax machine 600 further include traditionaltones and sounds generated by a traditional fax machine, to enhance auser's understanding of the operation of the virtual fax machine 600.The traditional tones and sounds include, for example, dial tones,touch-tones generated with respect to selection of the numerical keys,paper feed and eject sounds, and facsimile connection sounds. The soundsmay be generated over a speaker connected to the computer 310.Additional embodiments of the virtual fax machine 600 include flashingicons indicating that a new status message has been received and that atleast one new inbound fax has arrived. Further, the virtual fax machine600 may comprise a dialog box that flashes or otherwise displaysadditional “Fax Status” or “New Fax” messages when at least one outgoingfax has been completed or at least one new inbound fax has arrived. Inthis case, the “Fax Status” message does not flash until an outgoing faxhas been fully completed.

To attach or associate an electronic document to a fax to be sent, thevirtual fax machine 600 enables a user to “drag and drop” one ormultiple files to the send paper tray 602. Additionally, a user mayselect one or multiple files using a browser window by selecting thebrowse button 610 by an input device of the computer 310. As an exampleillustrated in FIG. 6, two electronic documents, “scripts.txt” and“Financials b.txt,” are attached to be faxed. Similarly, to un-attach anelectronic document, an “X,” as illustrated in FIG. 6, or an alternativemeans is provided by the virtual fax machine 600. It is noted that thevirtual fax machine 600 is capable of attaching or associating varioustypes of electronic documents such as the suite of Microsoft Office©documents, for example.

The enter fax number field 630 is available for a user to enter a numberof a recipient of a fax to be sent. More particularly, the enter faxnumber field 630 is available for a user to enter a telephone numberrouted by a PSTN to a traditional fax machine. The enter recipient namefield 632 is available for a user to enter a name of the recipient of afax to be sent. To that end, the name of the recipient entered in therecipient name field 632 may be included in the printed copy of the faxreceived by a receiving fax machine and/or stored for further use byadditional functions of the virtual fax machine 600.

The virtual fax machine 600 may be used to send faxes to multiplerecipients separated by delimiters such as semicolons. That is, multiplefax numbers separated by delimiters may be added in the enter fax numberfield 630, or multiple recipient names separated by delimiters may beadded in the enter recipient name field 632. Fax numbers may be enteredinto the enter fax number field 630 using the numeric keypad of thevirtual fax machine 600 or by an input device of the computer 310.Alternatively, a recipient name may be typed in the enter recipient namefield 632 or selected from an address book using the address book button634. Once at least one electronic document is attached and the fields630 and/or 632 are completed by a user, the transmission of a fax to besent may be commenced by selection of the send button 646 by an inputdevice of the computer 310.

Turning to FIG. 7, according web pages, scripts, and/or programsassociated with the virtual fax machine 600, an address book dialog box700 opens based on a selection of the address book button 634 using aninput device of the computer 310. As an example, the address book dialogbox 700 lists entries 720 including company name, name, and fax numberfields. The address book dialog box also includes an import button 702,a delete button 704, an add button 706, and a close button 708. Theaddress book dialog box 700 allows a user to manually add and deletecontacts and import contacts from a file or a secondary address bookrelated to another application. More specifically, the virtual faxmachine 600 is able to import contacts from a file, such as a *.CSVfile, or from an application, such as Microsoft Outlook®. Alternatively,a user may manually enter a new contact into a company name field 710, aname field 712, and a fax number field 714, using the input device ofthe computer 310. After the fields 710, 712, and 714 are completed, theuser may select the add button 706 to add the contact to the addressbook 700. Contacts may also be deleted by selecting one or more entries720 and selecting the delete button 704 by an input device of thecomputer 310. Selection of the close button 708 will close the addressbook dialog box 700. It is noted that one or more specific entries inthe address book dialog box 700, such as entry 720, may bedouble-clicked using the input device of the computer 310, to close theaddress book dialog box 700 and automatically populate the recipientnumber field 630 and/or the recipient name field 632 with theinformation associated with the entries of the address book.Additionally, the entries of the address book may be sorted by companyname, name, or fax number by selecting a header of an entry of theaddress book. It is also noted that various embodiments of the addressbook dialog box 700 include additional fields in each entry 720, such asseparate first and last name fields, user-defined reference and notefields, and a frequently faxed checkbox.

FIG. 8 illustrates an example of a cover page dialog box 800 accordingto web pages, scripts, and/or programs associated with the virtual faxmachine 600. The cover page dialog box 800 opens based on a selection ofthe cover page button 642 of the virtual fax machine 600. Using thecover page dialog box 800, a user can select to use (i.e., add) a coverpage by selecting box 820 by an input device of the computer 310.Additionally, a user can add text to the cover sheet using the “From”field 840 and the “Notes” field 860. Text added to the fields 840 and860 may be added to a cover page attached at the beginning of a fax tobe sent by the virtual fax machine 600. Embodiments of the presentinvention may also include additional fields of text to be added to thecover page, such as a subject field or other fields useful foridentifying, distinguishing, and describing an incoming facsimile. Aftermaking appropriate selections, the cover page dialog box 800 may beclosed by selecting the “OK” button. Alternatively, the cover pagedialog box 800 may be closed without saving any selections by selectingthe “Cancel” button.

FIG. 9 illustrates an example of a fax log dialog box 900 according toweb pages, scripts, and/or programs associated with the virtual faxmachine 600. The fax log dialog box 900 opens based on a selection ofthe fax log button 644 of the virtual fax machine 600. Using the fax logdialog box 900, a user can search among a log of faxes sent using thevirtual fax machine 600 over a period of time. The fax dialog box 900includes magnitude 930 and unit 932 time period pulldown menu fields,billing code 940, customer reference 942, and job number 944 filterfields, and fax log entries 920. A period of time for a fax log searchmay be set according to the pulldown menu fields 930 and 932. After theperiod of time is selected, a search of sent faxes may be performed byselecting the “Search” button by an input device of the computer 310.The search may return one or more fax log entries 920. Additionally, auser can perform a filtered search of sent faxes using the virtual faxmachine 600, according to the billing code filed 940, the customerreference field 942, and the job number field 944. Among the fax logentries 920, sent faxes may also be sorted according to any of thecolumn headings, such job number, bill code, customer reference,received, completed, and status. A fax may be re-sent or viewed bydouble-clicking an entry 920 in the fax log by an input device of thecomputer 310. Embodiments of the present invention may also includeadditional filter fields, sent fax entry fields, and column headings.For example, in alternative embodiments of the fax log dialog box, eachfax log entry 920 may include a page count field and a fax number fieldwhich displays a telephone number of a sent fax. The fax log dialog box900 may be closed by selecting the “Close” button.

FIG. 10 illustrates an example of a received fax dialog box 1000according to web pages, scripts, and/or programs associated with thevirtual fax machine 600. The received fax dialog box 1000 opens based ona selection of the received faxes button 620 of the virtual fax machine600. Using the received fax dialog box 1000, a user can search among alog of faxes received by the virtual fax machine 600 over a period oftime. The period of time for a search can be set according to thenumerical pulldown menu 1030 and the unit pulldown menu 1032. After theperiod of time has been selected, a search of received faxes may beperformed by selecting the “Search” button by an input device of thecomputer 310. The search may return one or more received fax entries1020. Using the input device of the computer 310, one or more receivedfax entries 1020 may be selected for copying or viewing from the server330. In additional embodiments of the invention, a user can perform afiltered search of faxes received by the virtual fax machine 600according to various filter fields, such as billing code, customerreference, job number, and telephone number. Among the entries 1020,received faxes may also be sorted according to any of the columnheadings, such job number, CSID (i.e., telephone number), number ofpages, and received time. Embodiments of the present invention may alsoinclude additional received fax entry fields and column headings of thereceived fax entries 1020. The fax log dialog box 1000 may be closed byselecting the “Close” button.

FIG. 11 illustrates an example of a settings dialog box 1100 accordingto web pages, scripts, and/or programs associated with the virtual faxmachine 600. The settings dialog box 1100 opens based on a selection ofthe settings button 640 of the virtual fax machine 600. The settingsdialog box 1100 may be presented to a new user before the new user usesthe virtual fax machine 600 for the first time. In the settings dialogbox 1100, the new user is prompted to enter a login (i.e., username) atfield 1102 and password at field 1104. Optionally, a user may also entertext in a billing code field 1106 and a customer reference field 1108.The report address field 1100 is available to specify an alternatedelivery address for fax reports. As an additional option, report typeand fax mode pull-down menus 1112 and 1114, respectively, are availableto select an appropriate detail level of reports and image quality offaxes. The information entered by user at the settings dialog box 1100may be stored at the computer 310, the server 330, or both the computer310 and the server 330 for future use in aspects of the virtual faxmachine 600.

FIG. 12 illustrates an example embodiment of a method of sending faxes1200 using the virtual fax machine 600 according to web pages, scripts,and/or programs associated with the virtual fax machine. Beginning atstep 1202, a user of the computer 310 may direct the network browser 410to request web pages and scripts associated with the virtual fax machine600 from the server 330. At step 1204, the server 330 receives therequest from the computer 310 and sends one or more web pages andscripts associated with the virtual fax machine 600 to the computer 310via the packet-switched data network 320, in response to the request. Itis noted that the request for the web pages and scripts associated withthe virtual fax machine 600 may occur as a plurality of requests. Forexample, individual files (i.e., individual web pages and scripts)associated with the virtual fax machine 600 may be requested atrespective points in time, and the server 330 may receive the individualrequests and send individual files in turn. It is further noted that thescripts may also be embedded, at least in part, within the web pagesassociated with the virtual fax machine 600, as discussed above.

Based on the web pages and scripts sent by the server 330, the networkbrowser 410 of the computer 310 displays the settings screen 1100 on adisplay of the computer 310 at step 1206. Alternatively, if the user isan established user of the virtual fax machine 600, step 1206 may beskipped in favor of step 1208. That is, some embodiments of the method1200 display the settings dialog box only for a new user.

At step 1208, the virtual fax machine 600 is displayed on the display ofthe computer 310. That is, at step 1208, the network browser 410 andscript engine 420 of the computer 310 may interpret and execute the webpages and scripts received from the server 330, to display the virtualfax machine 600 illustrated in FIG. 6. Using the virtual fax machine600, a user may attach or associate one or more electronic documentsstored on the memory 440 of the computer 310 to a fax to be sent, atstep 1210, and specify a recipient of the fax to be sent, at step 1212.That is, according to the web pages, scripts, and/or programs associatedwith the virtual fax machine, a user may attach or associate one or moreelectronic documents by “drag and drop” to the send paper tray 602 or byselecting the browse button 610 at step 1210. Additionally, a user mayspecify one or more fax numbers of the fax to be sent, at the fax numberfield 630, specify a name of one or more recipients of the fax to besent, at the recipient name field 632, and/or specify one or morerecipients of the fax to be sent using the address book dialog box 700,at step 1212. A cover page may also be selected and text associated withthe cover page specified using the cover page dialog box 800 at step1214. After one or more electronic documents have been attached orassociated with the fax to be sent and at least one recipient of the faxto be sent has been specified at steps 1210, 1212, and 1214, the usermay commence the transmission of the fax to be sent at step 1216 byselecting the “Send” button 646 of the virtual fax machine 600 by aninput device of the computer 310.

According to the web pages, scripts, and/or programs associated with thevirtual fax machine 600, any attached or associated electronic documentsare processed for transmission to the server 330 by the computer 310 atstep 1218. That is, any attached or associated electronic documents areencoded to a form suitable for transmission over a packet-switched datanetwork (i.e., as web-enable documents), for transmission to the server330 over the packet-switched data network 320, at step 1218.Alternatively, any attached or associated electronic documents may beencoded to a form suitable for transmission over a PSTN, fortransmission to the server 330 over the packet-switched data network320, at step 1218. The encoded documents are transmitted by the computer310 to the server 330 over the packet-switched data network 320, alongwith any cover page information and information specific to the one ormore recipients of the fax to be sent, at step 1220.

At step 1222, the server 330 receives the encoded electronic documentsfrom the computer 310 over the packet-switched data network 320 via thepacket-switched interface 510 and routes the encoded electronicdocuments to the facsimile service 540. At step 1224, the facsimileservice 540 transcodes the electronic documents to a form suitable fortransmission over a PSTN to a traditional fax machine. For example, asdiscussed above, the facsimile service 540 transcodes the electronicdocuments from a first type of encoding suitable for communication overthe packet switched data network 320 to a second type of encodingsuitable for communication over the PSTN network 340. Alternatively, ifthe electronic documents are received by the server 300 from thecomputer 310 in a form suitable for transmission over the PSTN network340, step 1224 may be skipped.

At step 1226, the facsimile service 540 transmits the transcodedelectronic documents to a traditional fax machine over the PSTN network340 via the PSTN interface 550. For example, based upon the one or morefax numbers specified by the user at step 1212, the facsimile service540 may transmit the transcoded electronic documents to the traditionalfax machine 350 over the PSTN network 340, and the traditional faxmachine 350 may receive, interpret, and reproduce the transcodedelectronic documents in hardcopy form at step 1228. Alternatively, ifthe electronic documents are received by the server 300 from thecomputer 310 in a form suitable for transmission over the PSTN network340, the facsimile service 540 may directly transmit the electronicdocuments to the traditional fax machine 350 over the PSTN network 340via the PSTN interface 550.

FIG. 13 illustrates an example embodiment of a method of receiving faxes1300 using the virtual fax machine 600. Beginning at step 1302, a userof the traditional fax machine 350 scans a hardcopy of a document tocapture an image on the document and produce an electronic copy of theimage. At step 1304, the traditional fax machine 350 encodes theelectronic copy of the image according to a form suitable fortransmission over the PSTN 340, to produce an encoded image. At step1036, the traditional fax machine 350 transmits the encoded image to theserver 330 over the PSTN 340, using a number associated with the virtualfax machine. At the server 330, upon receipt of the encoded image at thefacsimile service 540 via the PSTN interface 550, the facsimile service540 transcodes the image data to a form suitable for viewing and editingon the a computer, at step 1308, and stores the encoded image data tothe memory 530, at step 1310.

Subsequently, a user of the computer 310 requests web pages associatedwith the virtual fax machine 600 from the server 330 over thepacket-switched data network 320 using the network browser 410. Further,based upon a user's selection of one or more received fax entries 1020for copying or viewing, the computer 310 transmits and the server 330receives, at step 1312, a request for image data associated with the oneor more received fax entries 1020. In response to the request, theserver 330 retrieves the image data from the memory 530 and provides acopy of the image data to the computer 310 for copying or viewing atstep 1314. Variations of steps 1310 and 1312 include posting the imagedata as part of web page, specifying a link to the image data on a website hosted by the server, or sending an e-mail including an attachmentof the image data.

In embodiments of the present invention in which the computer 310includes the website host service 460 and the PSTN interface 480, thecomputer 310 may perform methods similar to methods 1200 and 1300described above, except that all steps may be performed among thecomputer 310, the traditional fax machine 350, and the PSTN 340.

The present invention may be implemented in hardware, software, orcombinations of hardware and software. FIG. 14 illustrates a blockdiagram of an example hardware embodiment of the computer 310 and/or theserver 330. The example hardware embodiment includes a general purposearithmetic processor (CPU) 1410, a random access memory (RAM) 1420, amemory 1430, an input/output interface (I/O) 1440, and a bus 1450. TheCPU 1410 comprises any well known general purpose arithmetic processor.The RAM 1420 comprises any well known random access memory configured tostore software programs for execution by the CPU 1410. The memory 1430is configured to store software programs thereon that, when executed bythe CPU 1410, direct the CPU 1410 to execute various aspects of thepresent invention described above. As a non-limiting example group, thememory 1430 may comprise one or more of an optical disc, a magneticdisc, a semiconductor or solid state memory (i.e., a flash basedmemory), a magnetic tape memory, a removable memory, or other well knownmemory means for storing software programs. The I/O 1440 comprises, forexample, device input interfaces, device output interfaces, and networkinput and output interfaces for communicatively and electricallycoupling the computer 310 or the server 330 to external devices andnetworks. The bus 1450 is configured to electrically couple the CPU1410, the RAM 1420, the memory 1430, and the I/O 1440, for the transferof data and instructions among the CPU 1410, the RAM 1420, the memory1430, and the I/O 1440. In operation, the CPU 1410 is configured to loadsoftware programs stored on the memory 1430, or memories accessible viathe I/O 1440, to the RAM 1420. The CPU 1410 is further configured to,based on an execution of the software programs, implement variousaspects of the present invention described above

Although embodiments of the present invention have been described abovein detail, the above descriptions are provided only as examples. Thatis, it should be appreciated that many aspects of the present inventiondescribed above were described by way of example only and were notintended as being required or essential elements unless explicitlystated otherwise. Various modifications of, and equivalent stepscorresponding to the disclosed aspects of the above-describeembodiments, may be made by a person having ordinary skill in the artwithout departing from the spirit and scope of the present inventiondefined in the following claims, the scope of which is to be accordedthe broadest interpretation so as to encompass such modifications andequivalent structures.

What is claimed:
 1. A system for a virtual fax machine, comprising: acomputer including a network browser configured to browse apacket-switched data network, receive a script associated with a virtualfax machine over the packet-switched data network, and display thevirtual fax machine based on the script; a server including a facsimileservice configured to receive at least one electronic documentassociated with a fax to be sent using the virtual fax machine, encodethe electronic document to a form suitable for communication over apublic switched telephone network (PSTN), and transmit the encodedelectronic document over the PSTN as the fax to be sent; and atraditional facsimile machine configured to receive the fax to be sentover the PSTN and produce a hardcopy of the electronic document.
 2. Thesystem of claim 1, wherein the server further includes a network hostservice configured to host at least one web page and at least one scriptassociated with the virtual fax machine, and the network browser isfurther configured to receive the script associated with the virtual faxmachine from the server via the network host service.
 3. The system ofclaim 2, wherein the network browser further includes a script engineconfigured to interpret, execute, and display the virtual fax machinebased on the script associated with the virtual fax machine.
 4. Thesystem of claim 3, wherein the virtual fax machine includes a send papertray and a receive paper tray based on the script associated with thevirtual fax machine, and the script engine is further configured to,based on the script associated with the virtual fax machine, associatethe at least one electronic document to the fax to be sent, when the atleast one electronic document is dragged and dropped upon the send papertray using an input device of the computer.
 5. The system of claim 4,wherein the virtual fax machine further includes a send button based onthe script associated with the virtual fax machine, and the scriptengine is further configured to produce sounds associated with atraditional fax machine based on the script associated with the virtualfax machine, in response to a selection of the send button using aninput device of the computer.
 6. The system of claim 4, wherein, basedon the script associated with the virtual fax machine, the script engineis further configured to encode the at least one electronic document toa form suitable for communication over the packet-based data network,and transmit the encoded electronic document to the server.
 7. Thesystem of claim 1, wherein the computer further includes a firstprocessor, the server further includes a second processor, and thenetwork browser further includes a script engine executing on the firstprocessor and configured to interpret, execute, and display the virtualfax machine based on the script associated with the virtual fax machine.8. The system of claim 1, wherein the virtual fax machine resembles atraditional fax machine.
 9. An apparatus for a virtual fax machine,comprising: a network browser configured to locate and execute a scriptassociated with a virtual fax machine, display the virtual fax machinebased on the script, associate at least one electronic document with afax to be sent using the virtual fax machine, encode the at least oneelectronic document to a form suitable for communication over a network;and a network interface configured to transmit the encoded electronicdocument over the network as the fax to be sent.
 10. The apparatus ofclaim 9, wherein the network browser further includes a script engineconfigured to interpret, execute, and display the virtual fax machinebased on the script associated with the virtual fax machine.
 11. Theapparatus of claim 10, wherein the virtual fax machine includes a sendpaper tray and a receive paper tray based on the script associated withthe virtual fax machine, and the script engine is further configured to,based on the script associated with the virtual fax machine, associatethe at least one electronic document to the fax to be sent, when the atleast one electronic document is dragged and dropped upon the send papertray.
 12. The apparatus of claim 10, wherein the virtual fax machinefurther includes a send button based on the script associated with thevirtual fax machine, and the script engine is further configured toproduce sounds associated with a traditional fax machine based on thescript associated with the virtual fax machine, in response to aselection of the send button.
 13. The apparatus of claim 9, furthercomprising a processor, wherein the network browser further includes ascript engine executing on the first processor and configured tointerpret, execute, and display the virtual fax machine based on thescript associated with the virtual fax machine.
 14. An apparatus for avirtual fax machine, comprising: a network host service configured tohost at least one web page or at least one script associated with avirtual fax machine; a facsimile service configured to receive at leastone electronic document associated with a fax to be sent using thevirtual fax machine, encode the electronic document to a form suitablefor communication over a public switched telephone network (PSTN), andtransmit the encoded electronic document over the PSTN as the fax to besent; and a PSTN interface configured to transmit the encoded electronicdocument over the PSTN as the fax to be sent.
 15. The apparatus of claim14, wherein the virtual fax machine includes a send paper tray and areceive paper tray based on the script associated with the virtual faxmachine, and the virtual fax machine associates the at least oneelectronic document to the fax to be sent, when the at least oneelectronic document is dragged and dropped upon the send paper tray 16.The apparatus of claim 14, wherein the virtual fax machine furtherincludes a send button based on the script associated with the virtualfax machine, and the virtual fax machine produces sounds associated witha traditional fax machine based on the script associated with thevirtual fax machine, in response to a selection of the send button. 17.A method for a virtual fax machine, comprising: locating and executing,by a computer, a script associated with a virtual fax machine;displaying the virtual fax machine based on the script; associating atleast one electronic document with a fax to be sent using the virtualfax machine; encoding the at least one electronic document to a formsuitable for communication over a network; and transmitting the encodedelectronic document over the network as the fax to be sent.
 18. Themethod of claim 17, wherein the virtual fax machine includes a sendpaper tray and a receive paper tray based on the script associated withthe virtual fax machine, and the method further comprises associating atleast one electronic document stored on a computer to a fax to be sent,when the at least one electronic document is dragged and dropped uponthe send paper tray, based on the script associated with the virtual faxmachine.
 19. The method of claim 17, wherein the virtual fax machinefurther includes a send button based on the script associated with thevirtual fax machine, and the method further comprises producing soundsassociated with a traditional fax machine, in response to a selection ofthe send button, based on the script associated with the virtual faxmachine.
 20. A computer readable medium storing computer instructionsthereon that, when executed by an arithmetic processor, direct thearithmetic processor to perform a method of a virtual fax machine,comprising: locating and executing a script associated with a virtualfax machine; displaying a virtual fax machine based on the script, thevirtual fax machine including a send paper tray, a receive paper tray,and a send button; associating an at least one electronic document witha fax to be sent; encoding the at least one electronic document to aform suitable for communication over a network; and transmitting theencoded electronic document over the network as the fax to be sent.